<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">
<ui:composition template="../../templates/layout.xhtml">
<ui:param name="jsfBean" value="#{fnEnvioJsfBean}"/>

<ui:define name="title">Envío de Transmisiones de SEIDA</ui:define>
<ui:define name="content">
<ui:decorate template="/pages/base/sunatMessage.xhtml">
</ui:decorate>
<p:spacer height="5px"/>
<p:panel styleClass="pnlTitlePage">
    <h:outputText value="Envío de Transmisiones de SEIDA" style="font-size:16px;" styleClass="resultHeader"/>
</p:panel>
<p:spacer height="5px"/>
<h:form id="formPrincipal" prependId="false">
    <!-- Panel de búsqueda y resultados -->
    <h:panelGrid columns="5" rendered="#{not jsfBean.readOnly}">
        <p:commandButton id="cmbCloseEnvio" value="#{messages.label_close}"
                         process="@none"
                         immediate="true"
                         icon="ui-icon-close"
                         action="#{jsfBean.closeEnvioPageAction}" ajax="false">
        </p:commandButton>
        <h:outputLabel value="#{messages.label_leyenda_camposObligatorios}"
                       styleClass="leyenda-campoRequerido"/>
    </h:panelGrid>
    <p:panel id="pnlCriteriaSeida" header="Criterio de Búsqueda" styleClass="pnlCriteria">
        <h:panelGrid id="pngCriteriaSeida" columns="8">

            <h:outputLabel for="selectTipoEnvio" value="Tipo Envio"/>
            <p:selectOneMenu id="selectTipoEnvio"
                                               value="#{jsfBean.filter.tipoEnvio}"
                                               panelStyle="width:200px"
                                               effect="fade"
                                               style="width:200px;">
            <f:selectItem itemLabel="Seleccione" itemValue=""/>
            <f:selectItems value="#{jsfBean.tipoTransaccionList}"
                    />
            <p:ajax event="change" listener="#{fnEnvioJsfBean.onSelectTipoEnvio}" >
            </p:ajax>
        </p:selectOneMenu>

            <h:outputLabel for="selectAnno" value="Año"/>
            <p:selectOneMenu id="selectAnno" value="#{jsfBean.filter.annoManifiesto}"
                             style="width:90px;">
                <f:selectItem itemLabel="Seleccione" itemValue=""/>
                <f:selectItems value="#{jsfBean.annoList}"/>
            </p:selectOneMenu>

            <h:outputLabel for="txtManifiesto" value="Manifiesto"/>
            <p:inputText id="txtManifiesto" value="#{jsfBean.filter.numeroManifiesto}"
                         onkeypress="return isNumeric(event)" size="12" maxlength="5"/>

            <h:outputLabel for="txtBl" value="Nº Bl"/>
            <p:inputText id="txtBl" value="#{jsfBean.filter.numeroBl}"
                         size="30" maxlength="50"/>

            <h:outputLabel for="selectValidarEstado" value="Validar Estados"/>
            <p:selectOneMenu id="selectValidarEstado" value="#{jsfBean.filter.validarEstados}"
                             style="width:90px;">
                <f:selectItem itemLabel="Si" itemValue="1"/>
                <f:selectItem itemLabel="No" itemValue=""/>
            </p:selectOneMenu>
            <h:outputLabel for="selectLigado" value="Bls Ligados"/>
            <p:selectOneMenu id="selectLigado" value="#{jsfBean.filter.ligado}"
                             style="width:90px;">
                <f:selectItem itemLabel="Si" itemValue="1"/>
                <f:selectItem itemLabel="No" itemValue="0"/>
            </p:selectOneMenu>
            <h:outputLabel for="selectEnviado" value="Envíado"/>
            <p:selectOneMenu id="selectEnviado" value="#{jsfBean.filter.enviado}"
                             style="width:90px;">
                <f:selectItem itemLabel="Todos" itemValue=""/>
                <f:selectItem itemLabel="Si" itemValue="1"/>
                <f:selectItem itemLabel="No" itemValue="0"/>
            </p:selectOneMenu>
            <h:outputLabel for="selectDeposito" value="Depósito" rendered="#{jsfBean.notaTarja}"/>
            <h:panelGrid columns="3">
                <p:inputText id="selectDeposito" value="#{jsfBean.filter.depositoTemporal}"
                             rendered="#{jsfBean.notaTarja}"
                             onkeypress="return isNumeric(event)" size="5" maxlength="4"/>
                <h:outputLabel for="selectCategoria" value="Categoria" rendered="#{jsfBean.notaTarja}"/>
                <p:selectOneMenu id="selectCategoria" value="#{jsfBean.filter.categoria}"
                                 style="width:90px;" rendered="#{jsfBean.notaTarja}">
                    <f:selectItem itemLabel="Todos" itemValue=""/>
                    <f:selectItem itemLabel="IMPRT" itemValue="IMPRT"/>
                    <f:selectItem itemLabel="TRSHP" itemValue="TRSHP"/>
                </p:selectOneMenu>
            </h:panelGrid>
        </h:panelGrid>
        <p:spacer height="3px"/>

        <p:spacer height="3px"/>


        <h:panelGrid id="gridBusqueda3" columns="3">
            <p:commandButton ajax="true" value="Buscar" id="btnBuscar" icon="ui-icon-search"
                             actionListener="#{jsfBean.findAction}"
                    />
            <p:commandButton ajax="true" value="Limpiar" id="btnLimpiar" icon="ui-icon-refresh"
                             actionListener="#{jsfBean.cleanAction}"
                    />
        </h:panelGrid>


    </p:panel>
    <p:panel id="pnlResultSeida" toggleable="false" toggleSpeed="250"
             styleClass="pnlResult">
        <f:facet name="header">
            <h:outputText value="Listado de registros"/>
            <h:outputText value=" (Registros : #{jsfBean.resultListSize}) " styleClass="resultHeader"/>
        </f:facet>
        <p:toolbar>
            <p:toolbarGroup align="left">
                <p:commandButton ajax="true" value="Enviar a Sunat" id="btnEnviar" icon="ui-icon-search"
                                 actionListener="#{jsfBean.sendSunatPageAction}"
                        />
            </p:toolbarGroup>
            <p:toolbarGroup align="right">
                <h:commandLink>
                    <h:graphicImage library="images" name="excel.png" styleClass="ui-toolbar-group-right"
                                    />
                    <p:dataExporter type="xls" target="dttResultadoSeida" fileName="dpworld" />
                </h:commandLink>
            </p:toolbarGroup>
        </p:toolbar>
        <p:dataTable id="dttResultadoSeida" value="#{jsfBean.resultList}"
                     var="item"
                     rowKey="#{item.numeroBLHouse}"
                     emptyMessage="#{messages.label_no_records_found1}"
                     selection="#{jsfBean.selectedRows}"
                     resizableColumns="false"
                     paginator="#{jsfBean.showablePaginator}"
                     paginatorPosition="bottom"
                     paginatorTemplate="#{messages.label_dataTable_rows_per_page} {RowsPerPageDropdown} | {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} | #{messages.label_dataTable_jump_to_Page} {JumpToPageDropdown}"
                     rowsPerPageTemplate="#{jsfBean.initRowsPerResultPage},10,25,50"
                     rows="25"
                     style="width:100%">
            <p:ajax event="toggleSelect" listener="#{jsfBean.selectUnselectAllRows}" update="dttResultadoSeida" process="@this" />
            <p:column selectionMode="multiple" style="width:3%" exportable="false"/>
            <p:column styleClass="columnLeftTopClass #{item.validoCss}"
                      rendered="#{jsfBean.terminoDescarga}"
                      style="min-width:100px; max-width:200px">
                <f:facet name="header">
                    <h:outputText value="Manifiesto"/>
                </f:facet>
                <h:outputText value="#{item.flexString03}">
                </h:outputText>
            </p:column>
            <p:column styleClass="columnLeftTopClass #{item.validoCss}"
                      rendered="#{jsfBean.terminoDescarga}"
                      style="min-width:100px; max-width:200px">
                <f:facet name="header">
                    <h:outputText value="Fecha de Termino Descarga"/>
                </f:facet>
                <h:outputText value="#{item.fechaDescarga}">
                    <f:convertDateTime pattern="dd/MM/yyyy HH:mm:ss" timeZone="America/Lima" type="both"/>
                </h:outputText>
            </p:column>
            <p:column styleClass="columnLeftTopClass #{item.validoCss}"
                      rendered="#{not jsfBean.terminoDescarga}"
                      style="min-width:100px; max-width:200px">
                <f:facet name="header">
                    <h:outputText value="Nº Bl Master / Det"/>
                </f:facet>
                <h:outputText value="#{item.numeroBLMaster} / #{item.numeroDetalleMaster}"/>
            </p:column>
            <p:column styleClass="columnLeftTopClass #{item.validoCss}" style="min-width:100px; max-width:200px"
                      rendered="#{not jsfBean.terminoDescarga}">
                <f:facet name="header">
                    <h:outputText value="Nº Bl House / Det"/>
                </f:facet>
                <h:outputText value="#{item.numeroBLHouse} / #{item.numeroDetalleHouse}"/>
            </p:column>

            <p:column styleClass="columnLeftTopClass #{item.validoCss}" style="min-width:45px; max-width:40px"
                      rendered="#{jsfBean.notaTarja}">
                <f:facet name="header">
                    <h:outputText value="Categoria"/>
                </f:facet>
                <h:outputText value="#{item.categoria}"/>
            </p:column>

            <p:column styleClass="columnLeftTopClass #{item.validoCss}" style="min-width:45px; max-width:40px"
                      rendered="#{jsfBean.notaTarja}">
                <f:facet name="header">
                    <h:outputText value="Depósito"/>
                </f:facet>
                <h:outputText value="#{item.depositoTemporal}"/>
            </p:column>

            <p:column styleClass="columnRighTopClass #{item.validoCss}" style="min-width:60px; max-width:200px"
                      rendered="#{not jsfBean.terminoDescarga}">
                <f:facet name="header">
                    <h:outputText value="Cant. Bultos Manifiesto"/>
                </f:facet>
                <h:outputText value="#{item.bultosManifestados}">
                    <f:convertNumber pattern="###,###,##0" locale="en-US"/>
                </h:outputText>
            </p:column>
            <p:column styleClass="columnRighTopClass #{item.validoCss}" style="min-width:60px; max-width:200px"
                      rendered="#{not jsfBean.terminoDescarga}">
                <f:facet name="header">
                    <h:outputText value="Peso Manifestado"/>
                </f:facet>
                <h:outputText value="#{item.pesoManifestados}">
                    <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                </h:outputText>
            </p:column>

            <p:column styleClass="columnRighTopClass #{item.validoCss}" style="min-width:60px; max-width:200px"
                      rendered="#{not jsfBean.terminoDescarga}">
                <f:facet name="header">
                    <h:outputText value="Peso Recibido"/>
                </f:facet>
                <h:outputText value="#{item.pesoRecibidos}">
                    <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                </h:outputText>
            </p:column>

            <p:column styleClass="columnLeftTopClass #{item.validoCss}" style="min-width:60px; max-width:200px"
                      rendered="#{not (jsfBean.terminoDescarga || jsfBean.notaTarja)}">
                <f:facet name="header">
                    <h:outputText value="Envíado"/>
                </f:facet>
                <p:selectOneMenu value="#{item.estadoBl}" effect="fold"
                                 style="width: 80px">
                    <f:selectItems value="#{jsfBean.estadoBlList}" />
                    <p:ajax event="change" listener="#{fnEnvioJsfBean.onActualizarEstadoBl}">
                    </p:ajax>
                </p:selectOneMenu>
            </p:column>

            <p:column styleClass="columnLeftTopClass #{item.validoCss}" style="min-width:60px; max-width:200px"
                      rendered="#{jsfBean.notaTarja}">
                <f:facet name="header">
                    <h:outputText value="Estado Envío"/>
                </f:facet>
                <h:outputText value="#{item.estadoBl}">
                </h:outputText>
            </p:column>

            <p:column styleClass="columnRighTopClass #{item.validoCss}" style="width:65px;"
                      rendered="#{jsfBean.notaTarja}"  >
                <f:facet name="header" >
                    <h:outputText value="Contenedores con problemas" title="Contenedores sin documento receptor o precinto" />
                </f:facet>
                <h:outputText value="#{item.totalContenedorError}"   >
                    <f:convertNumber pattern="##0" locale="en-US"/>
                </h:outputText>
            </p:column>

            <p:column exportable="false" styleClass="columnCenterTopClass#{item.validoCss}" style="min-width:50px; max-width:200px"
                      rendered="#{not jsfBean.terminoDescarga}">
                <f:facet name="header">
                    <h:outputText value="Ver Contenedores"/>
                </f:facet>
                <p:commandButton icon="ui-icon-zoomin" title="View"
                                 actionListener="#{jsfBean.showDialogAction}">
                    <f:attribute name="dlgWv" value="wvBlContenedor"/>
                    <f:attribute name="selectedRow" value="#{item}"/>
                    <f:attribute name="accion" value="showBlContenedor"/>
                </p:commandButton>
            </p:column>
        </p:dataTable>
    </p:panel>
</h:form>
<p:dialog id="dlgBlContenedor"
          header="#{messages.label_titulo_informacion}"
          modal="true" widgetVar="wvBlContenedor" resizable="true"
          dynamic="true" width="850">
    <p:outputPanel id="pnlBlContenedor">
        <h:panelGrid columns="1" styleClass="centered">
            <h:form>
                <p:panel id="pnlContenedorList" toggleable="false"
                         styleClass="gridContent">
                    <f:facet name="header">
                        <h:outputText value="Listado de Bl's"/>
                    </f:facet>
                    <p:dataTable id="dttWarning" value="#{jsfBean.contenedorBlList}"
                                 var="item"
                                 style="width:100%"
                                 paginator="true"
                                 rows="10"
                                 paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                 rowsPerPageTemplate="5,10,15">
                        <p:column styleClass="columnLeftTopClass #{item.estadoPesoClass}"
                                  style="width:70px;">
                            <f:facet name="header">
                                <h:outputText value="Contenedor"/>
                            </f:facet>
                            <h:outputText value="#{item.contenedorId}"/>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="min-width:60px; max-width:500px"
                                  rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Peso Neto"/>
                            </f:facet>
                            <p:selectOneMenu value="#{item.goodsAndCtrWtKgStr}" effect="fold" editable="true"
                                             panelStyle="width: 150px" style="width: 120px">
                                <f:selectItems value="#{item.pesos}"/>
                                <p:ajax event="change" listener="#{fnEnvioJsfBean.onSelectPeso}" update="dttWarning">
                                    <f:param name="pageWv" value="/pages/seida/envio.jsf"/>
                                </p:ajax>
                            </p:selectOneMenu>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  rendered="#{jsfBean.notaTarja}"
                                  style="width:50px">
                            <f:facet name="header">
                                <h:outputText value="Peso Neto"/>
                            </f:facet>
                            <h:outputText value="#{item.goodsAndCtrWtKg}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  rendered="#{jsfBean.notaTarja}"
                                  style="width:50px">
                            <f:facet name="header">
                                <h:outputText value="Transit State"/>
                            </f:facet>
                            <h:outputText value="#{item.transitState}">
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  rendered="#{jsfBean.notaTarja}"
                                  style="width:50px">
                            <f:facet name="header">
                                <h:outputText value="Estado Envio"/>
                            </f:facet>
                            <h:outputText value="#{item.estadoContenedor eq '3'?'Enviado':'Sin Enviar'}">
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  rendered="#{not jsfBean.notaTarja}"
                                  style="width:50px">
                            <f:facet name="header">
                                <h:outputText value="Peso RTG"/>
                            </f:facet>
                            <h:outputText value="#{item.pesoRtg}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="RTG Dif."/>
                            </f:facet>
                            <h:outputText value="#{item.pesoRtgPorcentaje}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Peso Grúa"/>
                            </f:facet>
                            <h:outputText value="#{item.pesoGrua}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Grúa Dif."/>
                            </f:facet>
                            <h:outputText value="#{item.pesoGruaPorcentaje}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Peso Baplie">
                                </h:outputText>
                            </f:facet>
                            <h:outputText value="#{item.grossWeight}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Baplie Dif."/>
                            </f:facet>
                            <h:outputText value="#{item.grossWeightPorcentaje}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Peso Bruto">
                                </h:outputText>
                            </f:facet>
                            <h:outputText value="#{item.pesoBruto}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px" rendered="#{not jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Bruto Dif."/>
                            </f:facet>
                            <h:outputText value="#{item.pesoBrutoPorcentaje}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnRighTopClass #{item.estadoPesoClass}"
                                  style="width:50px">
                            <f:facet name="header">
                                <h:outputText value="Peso Manifestado">

                                </h:outputText>
                            </f:facet>
                            <h:outputText value="#{item.pesoManifestado}">
                                <f:convertNumber pattern="###,###,##0.00" locale="en-US"/>
                            </h:outputText>
                        </p:column>
                        <p:column styleClass="columnLeftTopClass #{item.estadoPesoClass}"
                                  style="min-width:60px; max-width:100px" rendered="#{jsfBean.notaTarja}">
                            <f:facet name="header">
                                <h:outputText value="Depósito Temporal"/>
                            </f:facet>
                            <h:outputText value="#{item.depositoTemporal}"/>
                        </p:column>
                        <p:column styleClass="columnLeftTopClass #{item.estadoPesoClass}"
                                  rendered="#{jsfBean.notaTarja}"
                                  style="min-width:60px; max-width:100px">
                            <f:facet name="header">
                                <h:outputText value="RUC - Receptor"/>
                            </f:facet>
                            <h:outputText value="#{item.documentoReceptor}"/>
                        </p:column>
                        <p:column styleClass="columnLeftTopClass #{item.estadoPesoClass}"
                                  style="min-width:60px; max-width:100px">
                            <f:facet name="header">
                                <h:outputText value="Precinto Manifestado"/>
                            </f:facet>
                            <h:outputText value="#{item.precintoManifestado}"/>
                        </p:column>
                        <p:column styleClass="columnLeftTopClass #{item.estadoPesoClass}"
                                  style="min-width:60px; max-width:100px">
                            <f:facet name="header">
                                <h:outputText value="Precinto"/>
                            </f:facet>
                            <h:outputText value="#{item.allSeal}"/>
                        </p:column>
                    </p:dataTable>
                </p:panel>
            </h:form>
        </h:panelGrid>
        <h:panelGrid columns="1" styleClass="centered">
            <p:commandButton value="#{messages.label_aceptar}"
                             onclick="wvBlContenedor.hide()"/>
        </h:panelGrid>
    </p:outputPanel>
</p:dialog>
</ui:define>
</ui:composition>
</html>